<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>车辆模块所有接口</title>
    <style>
        .box{
            padding-left:40px;
            width:1000px;
        }
        pre{
            font-size:18px;
            font-weight:600;
        }
        h3{
            color:red;
        }
    </style>
</head>
<body>
    <div class="box">
        <h3>1.车辆实时状态(运行中，停运中，离线中)(100%)</h3>
        <p>接口类型：websocket</p>
        <p>var ws = new WebSocket("ws://192.168.1.239:9019")</p>
        <pre>
            ws.onopen = function(ev){
                 ws.sned(JOSN.stringify(data)); //发送json数据
            };
             ws.onmessage = function(data){}//接收数据
             ws.onclose = function(data){}//关闭连接
             ws.onerror = function(data){}//处理错误数据
        </pre>
        <pre>
             发送JSON数据格式及参数：
                {
                   type:2 //车辆
                   projectid:213 //项目id
                }
         </pre>
        <pre>
            正确的返回结果：
                {
                ret : 1,
                Info：{
                  offline:5 //离线中
                  stop:1 //停运中
                  online:2 //运行中
                errinfo:{ }
                }
                }

                错误的返回结果：
                {
                ret: -1,
                Info:{},
                errinfo：{
                   errcode :  “错误码”，
                   errmsg:   “错误说明”，
                   errinfo : “后台出错原因”
                }
                }
        </pre>
    </div>
    <div class="box">
        <h3>2.车辆时间和时间段的油耗和里程数(100%)</h3>
        <p>接口类型：post</p>
        <p>接口名称：/car/car_fuelAndMileage?time==1//每天1,时间段2</p>
        <pre>输入参数：{
            projectid：321，//项目id
            type：2，//摄像头1，车辆2
            startime：”2018-09-29 16:12:07”，//起始时间
            endingtime：”2018-09-29 16:12:07”，//结束时间
            }
        </pre>
        <pre>返回参数：{
            workoil：””，//耗油量
            workkm: “”//行使里程
            }
        </pre>
    </div>
    <div class="box">
        <h3>3.车辆按天统计和按月统计（完成80%）</h3>
        <p>接口类型：get</p>
        <p>接口名称：/car/car_statistic?projectid=231&type=0//返天和月0 返天 1 返月2</p>
        <p>注：做成分页</p>
        <pre>输入参数:{
            page: {
                rows: 10  每页显示几行（可选）
                page: 1  查询第几页的数据
            }
         }
        </pre>
        <pre>返回参数：{
                day:[
                {
                 day:”10/15”, //15号
                 workoil：“”，//耗油量
                 workkm: “”，//行使里程
                },
                {
                 day:”10/14”,
                 workoil：“”，//耗油量
                 workkm: “”，//行使里程
                }, …
                ],
                month: [
                {
                month:1, //1月
                workoil：“”，//耗油量
                workkm: “”，//行使里程
                },
                {
                month:2, //2月
                workoil：“”，//耗油量
                workkm: “”//行使里程
                },
               ]
        }
        </pre>
    </div>
    <div class="box">
        <h3>4.根据实时状态查询所有车辆详细信息（80%）</h3>
        <p>接口类型：post</p>
        <p>接口名称：/car/car_data_detail</p>
        <pre>输入参数：{
            projectid：231，//项目id
            type：2，//摄像头：1，车辆2
            mark：1，//全查询1,按条件查询2
            sub_type:1//重型机械设备 1 运输车2 小轿车3
            car_state: 1,//运行中 1，停运中 0，离线中 3
            page: {
            rows: 10  每页显示几行（可选）
            page: 1  查询第几页的数据
            }
        }
        </pre>
        <pre>返回参数：{
            authority:0//普通用户 0;超级用户 1
            car_data:[
                {
                id：2//主键
                deviceid：””，//终端设备手机号
                car_num：””，//车牌号
                name：“”，//设备名称
                longitude: “”，//经度
                latitude: “”，//纬度
                img：“”，//车辆照片
                car_state: 1,//运行中 1，停运中 0，离线中 3
                driver_name: “”，//司机姓名
                driver_phone: “”,//电话
                sub_type:1//重型机械设备 1 运输车2 小轿车3
                bim_id：””//中达设备的唯一编号
                time：””//车辆的添加时间
                }, …
            ]
        }
        </pre>
    </div>
    <div class="box">
        <h3>5.全局搜索接口(100%)</h3>
        <p>接口类型：post</p>
        <p>接口名称：/other/public_search</p>
        <pre>输入参数：{
           query:{
                type:'public',//public、project、car、camera、friends（分类搜索，public表示全部搜索）
                content:'搜索内容', //搜索内容，大于4个字符
            }
        }
        </pre>
        <pre>返回参数：{
            project:[
                {projected:123,name:”” },
                {},
                {},
                {}
            ],
            camera:[
                {pos:”dsad”//位置,name:””//所属项目},
                {},
                {}
            ],
            car:[
                {img:””//车辆照片, car_num:”sdjs11”//车牌号, car_name:””,//车辆名称,name:”” //所属项目},
                {},
                {}
            ],
            contact:[
                {img:””,//头像name:”” //所属项目},{}
                ]
            }
        </pre>
    </div>
    <div class="box">
        <h3>10.单辆车的历史轨迹(100%)</h3>
        <p>接口类型：post</p>
        <p>接口名称：/car/ day_track_map1</p>
        <pre>输入参数：{
           deviceid:””，//终端设备手机号
 	       time_mysql：””，//2018-06-19 15:00:00,2018-06-19 16:00:00
            }
        </pre>
        <pre>正确的返回结果：{
            ret : 1,
            info:{
                latitude:[“”,””,…],//坐标
                longitude:[ “”,””,…],//坐标
                mileage_end:””,//截止里程
                mileage_str:””,//起始里程
                oil_end:5,//截止油量
                oil_str:30,//起始油量
                outageInfo:[
                {
                        outagetime:1200,//停车时间
                        longitude:””,//停车坐标
                        latitude:””,//停车坐标
                        
                },{},{},…
                ],
                worktime:””//运行时长
            }   
        }
        错误的返回结果：
        {
            ret: -1,
            Info:{},
            errinfo：{
               errcode :  “错误码”，
               errmsg:   “错误说明”，
               errinfo : “后台出错原因”
            }
        }
        </pre>
    </div>
    <div class="box">
        <h3>11.单辆车的实时轨迹(100%)</h3>
        <p>接口类型：websocket</p>
        <p>var ws = new WebSocket("ws://192.168.1.239:9019")</p>
        <pre>
            ws.onopen = function(ev){
                 ws.sned(JOSN.stringify(data)); //发送json数据
            };
             ws.onmessage = function(data){}//接收数据
             ws.onclose = function(data){}//关闭连接
             ws.onerror = function(data){}//处理错误数据
        </pre>
         <pre>
             发送JSON数据格式及参数：
                {
                   deviceid:213 //设备id
                }
         </pre>
         <pre>
            正确的返回结果：{
            ret : 1,
            info:{
                bd_latitude:"",//当前坐标
                bd_longitude:"",//当前坐标
                car_state:1,//1运行中 0离线中 2停运中
                driver_name:"sjd", //司机姓名
                latitude:[“”,””,…],//实时坐标
                longitude:[ “”,””,…],//实时坐标
                mileage_end:””,//截止里程
                mileage_str:””,//起始里程
                oil_end:5,//截止油量
                oil_str:30,//起始油量
                outageInfo:[
                {
                        outagetime:1200,//停车时间
                        longitude:””,//停车坐标
                        latitude:””,//停车坐标
                        
                },{},{},…
                ],
                worktime:””//运行时长
            }   
        }
        错误的返回结果：
        {
            ret: -1,
            Info:{},
            errinfo：{
               errcode :  “错误码”，
               errmsg:   “错误说明”，
               errinfo : “后台出错原因”
            }
        }
        </pre>
    </div>
    <div class="box">
        <h3>12.单辆车统计油耗和里程数（100%）</h3>
        <p>接口类型：post</p>
        <p>接口名称：/car/ car_oil_mile?deviceid==””</p>
        <p>注：日统计返回一年的数据</p>
        <pre>输入参数：{
            type:1 //日统计 2 //时间段统计计算
            starttime:” 2018-09-29”,
            endtime: ” 2018-09-29”
            }
        </pre>
        <pre>返回参数：{
            day:{
                 [
                    {
                    time:”2019-09-01”
                    workoil：””，//耗油量
                    workkm: ””，//行使里程
                    },
                    {
                    time:”2019-09-02”
                    workoil：””，//耗油量
                    workkm: ””，//行使里程
                    }, …..
                 ]
        }, //日统计
        month:{
                [
                  {
                    time:”2018-10”
                    workoil：””，//耗油量
                    workkm: ””，//行使里程
                  },
                  {
                    time:”2018-09”
                    workoil：””，//耗油量
                    workkm: ””，//行使里程
                  }, …..
                ]
        },//月统计
        time_period:{
            workoil：””，//耗油量
            workkm: ””，//行使里程
        } //时间段统计
        }
        </pre>
    </div>
    <div class="box">
        <h3>13.绑定,编辑,删除司机（1个车绑定1个司机）(100）</h3>
        <p>接口类型：post</p>
        <p>接口名称：/car/ car_bind_driver</p>
        <pre>
            输入参数：{
                id:””,
                type:1,//1为绑定，2为编辑，3为删除
                driver_name:””,
                driver_phone:””
            }
        </pre>
        <pre>返回参数：{}
        </pre>
    </div>




</body>
</html>